.TH MKINITRAMFS 8  "2018/07/18" "initramfs\-tools" "System Administration"

.SH NAME
mkinitramfs \- low-level tool for generating an initramfs image

.SH SYNOPSIS
.B mkinitramfs
.RI [ option ]...
.B \-o
.IR outfile
.RI [ version ]
.br
.BR mkinitramfs " " -h

.SH DESCRIPTION
The
.B mkinitramfs
script generates an initramfs image.
The initramfs is a compressed cpio archive. The archive can be used on a
different box of the same arch with the corresponding Linux kernel.
.B mkinitramfs
is meant for advanced usage. On your local box
.B update-initramfs
calls
.B mkinitramfs
with the relevant parameters.
.B update-initramfs
keeps sha1sum of generated initramfs. It takes care to generate backups
and eventually runs the bootloader.

At boot time, the kernel unpacks that archive into RAM disk, mounts and
uses it as initial root file system. All finding of the root device
happens in this early userspace.

.SH OPTIONS
.TP
\fB\-c \fI compress
Override the
.B COMPRESS
setting in
.IR initramfs.conf .

.TP
\fB\-d \fI confdir
Set an alternate configuration directory.

.TP
\fB\-k
Keep the temporary directory used to make the image.

.TP
\fB\-l \fI compresslevel
Override the
.B COMPRESSLEVEL
setting in
.IR initramfs.conf .

.TP
\fB\-o \fI outfile
Write the image to
.IR outfile .

.TP
\fB\-r \fI root
Override the
.B ROOT
setting in
.IR initramfs.conf .

.TP
\fB\-v
Set the verbose mode output.

.TP
\fIversion
Set the kernel version of the initramfs image
(defaults to the running kernel).

.TP
\fB\-h\fR, \fB\-\-help\fR
Display usage information and exit.

.SH ENVIRONMENT
.B mkinitramfs
honours the
.B TMPDIR
environment variable. If set, it uses subdirectories in the given
directory to create its temporary working directories. Else it uses
.I /var/tmp
as default value for that purpose. The given directory should be on a
filesystem which allows the execution of files stored there, i.e.
should not be mounted with the
.B noexec
mount option.

If
.B SOURCE_DATE_EPOCH
is set,
.B mkinitramfs
attempts to generate a reproducible initramfs image.

.SH FILES
.TP
.I /etc/initramfs-tools/initramfs.conf
The default configuration file for the script. See
.BR initramfs.conf (5)
for a description of the available configuration parameter.

.TP
.I /etc/initramfs-tools/modules
Specified modules will be put in the generated image and loaded when the system boots. The format - one per line - is identical to that of
.I /etc/modules,
which is described in
.BR modules (5).

.TP
.I /etc/initramfs-tools/conf.d
The conf.d directory allows one to hardcode bootargs at initramfs build time
via config snippets. This allows one to set ROOT or RESUME.
This is especially useful for bootloaders, which do not pass an root bootarg.

.TP
.I /etc/initramfs-tools/DSDT.aml
If this file exists, it will be appended to the initramfs in a way that causes
it to be loaded by ACPI.

.SH EXAMPLES

Create an initramfs for current running kernel:

.PP
.B mkinitramfs -o ~/tmp/initramfs-$(uname -r)

Create an initramfs for specific kernel and keep builddirs:

.PP
.B mkinitramfs -k -o ~/tmp/initramfs-2.6.21-686 2.6.21-686

Debug initramfs creation (check out written logfile)
.PP
.B sh -x mkinitramfs -o ~/tmp/initramfs-$(uname -r) 2> ~/tmp/log

.SH AUTHOR
The initramfs-tools are written by Maximilian Attems <maks@debian.org>,
Jeff Bailey <jbailey@raspberryginger.com> and numerous others.

.SH SEE ALSO
.BR
.IR initramfs.conf (5),
.IR initramfs-tools (7),
.IR update-initramfs (8),
.IR lsinitramfs (8),
.IR unmkinitramfs (8).
